package com.pro.framework.api.util.inner;

import lombok.AllArgsConstructor;
import lombok.Data;

@Data
@AllArgsConstructor
public class TimeDifference {
    private final long days;
    private final long hours;
    private final long minutes;
    private final long seconds;
    private final long milliseconds;

//    /**
//     * 格式化为易读字符串
//     */
//    public String toReadableString() {
//        StringBuilder sb = new StringBuilder();
//        if (days > 0) sb.append(days).append("天");
//        if (hours > 0) sb.append(hours).append("小时");
//        if (minutes > 0) sb.append(minutes).append("分钟");
//        if (seconds > 0) sb.append(seconds).append("秒");
//        if (milliseconds > 0) sb.append(milliseconds).append("毫秒");
//
//        return sb.length() == 0 ? "0秒" : sb.toString();
//    }
//
//    /**
//     * 格式化为标准字符串
//     */
//    public String toStandardString() {
//        return String.format("%d天%02d小时%02d分钟%02d秒", days, hours, minutes, seconds);
//    }

    /**
     * 获取总毫秒数
     */
    public Long getTotalMilliseconds() {
        return days * 24 * 60 * 60 * 1000L
             + hours * 60 * 60 * 1000L
             + minutes * 60 * 1000L
             + seconds * 1000L
             + milliseconds;
    }
}
